#pragma once


#include "Expression.h"


class Sum : public Expression
{
public:
	Sum( const CExpressionSp& cspAugend, const CExpressionSp& cspAddend );


	bool operator ==( const Expression& cExpression ) const;
	ExpressionSp operator *( int iMultiplier ) const;
	ExpressionSp operator +( const Expression& cAddend ) const;
	ExpressionSp Reduce( const Bank& cBank, const std::tstring& cstrTo ) const;


	CExpressionSp m_spAugend;
	CExpressionSp m_spAddend;

}; // class Sum

typedef std::shared_ptr<Sum> SumSp;
